Modern semiconductor processing achieves millions of semiconductor devices on a single square inch of wafer. During semiconductor processing it is desirable to maintain the processing parameters generally constant to achieve a uniform process over the entire wafer. However, due to the inherent behavior of processing methods, the devices on the wafers vary in doping, size, and structure from one process run to the next. This variation is particular pronounced in short channel devices because a uniform deviation from nominal is a more significant percentage of a small device's overall channel dimension.
The variance may cause the operation of devices created during different semiconductor processing runs to differ slightly. This slight difference in behavior affects device characteristics such as current output for a particular input voltage. In terms of circuit behavior, this type of variation could have an effect on the slew rate of a circuit. For the purposes of understanding the slew rate is the rate of change at which the output of a device reacts to a change at its input.
Prior art systems operated at generally low speeds, which is to say, data was exchanged between systems at data transfer rates below those of the present invention. Low speed operation does not test the capabilities of the device and the variance in device behavior was not problematic.
In contrast to operation at generally slow speeds, operation at high speeds, i.e., a high rate of change in the signal at the input of a device, is problematic for devices that vary over process, i.e., vary in behavior from one process run to the next. For purposes of understanding, device behavior may be grouped into three categories: Fast, Normal, and Slow. In a digital environment fast devices have a larger current (Id) as compared to a slow device, which has a lower current (Id) for a particular V.sub.ds and V.sub.gs as compared to nominal. Of course, the output current of a device may assume any value between fast and slow since semiconductor processing parameters vary gradually from process to process.
Differences in device current output disrupt operation of circuits. To achieve proper operation of a semiconductor circuit at high speed, each device should have a generally uniform manner of operation. For example, in a digital environment, if a first device provides a larger current output than a second device to a generally similar input signal, then a non-uniform manner of operation can occur.
By way of example, in a digital circuit having numerous parallel output ports, it is desirable for the circuitry controlling each output port to operate at a known slew rate. Stated again, the slew rate for the purposes of understanding is the rate of change at which the output of a device reacts to a signal change at its input. If the slew rate of one or more of the output ports does not meet specifications, the circuit may not operate properly. In particular and by way of example, the PCI standard requires a particular slew rate to operate. Because the slew rate of the output circuitry is influenced by the biasing and uniformity in output of current sources that control the output driver circuitry, it is desirable to have a uniform and predictable input to the driver circuitry and for devices connected thereto to operate in a uniform manner.
Factors other than process variation result in changes in semiconductor device behavior. As a result, there is a need in the art for a method and apparatus to compensate for the effects of process parameter variation.